@font-face {
    font-family: 'TitilliumMaps';
    src: url('http://getfirebug.com/fonts/TitilliumMaps26L001.eot');
    src: local('☺'), url('http://getfirebug.com/fonts/TitilliumMaps26L001.woff') format('woff'), url('http://getfirebug.com/fonts/TitilliumMaps26L001.ttf') format('truetype');
    font-weight: bold;
}

* {
   position: relative;
}

html, body {
    width: 100%;
    min-height: 100%;
    min-height: calc(100% - 30px);
    min-height: -moz-calc(100% - 30px);
    margin: 0;
    padding-bottom: 30px;
}

body {
    background-color: #EAF1FB;
    background: #FFFFFF linear-gradient(top, #EAF1FB, #FFFFFF 450px) no-repeat;
    background: #FFFFFF -moz-linear-gradient(top, #EAF1FB, #FFFFFF 450px) no-repeat;
    background: #FFFFFF -webkit-linear-gradient(top, #EAF1FB, #FFFFFF 450px) no-repeat;
    background: #FFFFFF -o-linear-gradient(top, #EAF1FB, #FFFFFF 450px) no-repeat;
    background: #FFFFFF -ms-linear-gradient(top, #EAF1FB, #FFFFFF 450px) no-repeat;
    font-family: "Trebuchet MS", Helvetica, sans-serif;
    font-size: 0.9em;
}

#main {
    margin: auto;
    width: 870px;
}

#main {
    top: 20px;
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    -moz-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    -webkit-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    -o-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    -ms-box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
    background-color: rgba(255, 255, 255, 0.6);
    padding: 15px;
}

section#content {
    background-image: linear-gradient(bottom, #E6E6E6, #F0F0F0);
    background-image: -moz-linear-gradient(bottom, #E6E6E6, #F0F0F0);
    background-image: -webkit-linear-gradient(bottom, #E6E6E6, #F0F0F0);
    background-image: -o-linear-gradient(bottom, #E6E6E6, #F0F0F0);
    background-image: -ms-linear-gradient(bottom, #E6E6E6, #F0F0F0);
    border-radius: 8px;
    -moz-border-radius: 8px;
    -webkit-border-radius: 8px;
    -o-border-radius: 8px;
    margin: 10px 0;
    padding: 10px;
}

section#output {
    background-image: linear-gradient(bottom, #F5F5F5, #FFFFFF);
    background-image: -moz-linear-gradient(bottom, #F5F5F5, #FFFFFF);
    background-image: -webkit-linear-gradient(bottom, #F5F5F5, #FFFFFF);
    background-image: -o-linear-gradient(bottom, #F5F5F5, #FFFFFF);
    background-image: -ms-linear-gradient(bottom, #F5F5F5, #FFFFFF);
    height: 50px;
    margin: 10px 0;
    padding: 10px;
}

footer {
    margin-top: 10px;
    text-align: right;
    font-size: 75%;
    font-style: italic;
}

h1, h2 {
    font-family: /* TitilliumMaps, */ "Trebuchet MS", Helvetica, sans-serif;
    font-size: 130%;
    font-weight: bold;
}

h1 {
}

h2 {
    margin: 0.5em 0;
    border-bottom: 2px solid #9ACBE4;
}

h3 {
    margin: 0.3em 0 0.2em 0;
    font-size: 105%;
}

p, ol, ul {
    margin: 0.2em 0;
}

p {
    padding-left: 20px;
}

section#description p {
    font-style: italic;
}

ul {
    list-style-type: square;
    list-style-image: url();
}

li.ok, li span.ok {
    color: #00B400;
}

li.error, li span.error {
    color: #DC0000;
}

code {
    color: #008C00;
}

code.key {
    color: #0000FF;
}

input[type="text"], button {
    border: 1px solid #AAAAAA;
    border-radius: 5px;
    -moz-border-radius: 5px;
    -webkit-border-radius: 5px;
    -o-border-radius: 5px;
    padding: 3px 5px;
}

input[type="button"], button {
    background-image: linear-gradient(bottom, #A0A0A0, #C8C8C8);
    background-image: -moz-linear-gradient(bottom, #A0A0A0, #C8C8C8);
    background-image: -webkit-linear-gradient(bottom, #A0A0A0, #C8C8C8);
    background-image: -o-linear-gradient(bottom, #A0A0A0, #C8C8C8);
    background-image: -ms-linear-gradient(bottom, #A0A0A0, #C8C8C8);
    box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 2px 2px -1px #FFFFFF inset;
    -moz-box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 2px 2px -1px #FFFFFF inset;
    -webkit-box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 2px 2px -1px #FFFFFF inset;
    -o-box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 2px 2px -1px #FFFFFF inset;
    -ms-box-shadow: 0 -2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 2px 2px -1px #FFFFFF inset;
    text-shadow: 1px 1px rgba(255, 255, 255, 0.3);
}

input[type="button"]:hover, button:hover {
    background-image: linear-gradient(bottom, #B4B4B4, #DCDCDC);
    background-image: -moz-linear-gradient(bottom, #B4B4B4, #DCDCDC);
    background-image: -webkit-linear-gradient(bottom, #B4B4B4, #DCDCDC);
    background-image: -o-linear-gradient(bottom, #B4B4B4, #DCDCDC);
    background-image: -ms-linear-gradient(bottom, #B4B4B4, #DCDCDC);
}

input[type="button"]:active, button:active {
    background-image: linear-gradient(top, #8C8C8C, #A0A0A0);
    background-image: -moz-linear-gradient(top, #8C8C8C, #A0A0A0);
    background-image: -webkit-linear-gradient(top, #8C8C8C, #A0A0A0);
    background-image: -o-linear-gradient(top, #8C8C8C, #A0A0A0);
    background-image: -ms-linear-gradient(top, #8C8C8C, #A0A0A0);
    box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 -2px 2px -1px #FFFFFF inset;
    -moz-box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 -2px 2px -1px #FFFFFF inset;
    -webkit-box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 -2px 2px -1px #FFFFFF inset;
    -o-box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 -2px 2px -1px #FFFFFF inset;
    -ms-box-shadow: 0 2px 2px -1px rgba(0, 0, 0, 0.5) inset, 0 -2px 2px -1px #FFFFFF inset;
}